home *** CD-ROM | disk | FTP | other *** search
Text File | 1998-12-26 | 2.4 KB | 75 lines | [TEXT/NTP1] |
- /*====================================================================
- fixedSin.def ©1998 rryu.
-
- fixed point
-
- ====================================================================*/
-
- constant kPtPos := 10; //point bit position
-
- /*----------------------------------------------------------------------
- sin table
- */
- DefConst('kSinTable,
- [
- 0,17,35,53,71,89,107,124,142,160,
- 177,195,212,230,247,265,282,299,316,333,
- 350,366,383,400,416,432,448,464,480,496,
- 511,527,542,557,572,587,601,616,630,644,
- 658,671,685,698,711,724,736,748,760,772,
- 784,795,806,817,828,838,848,858,868,877,
- 886,895,904,912,920,928,935,942,949,955,
- 962,968,973,979,984,989,993,997,1001,1005,
- 1008,1011,1014,1016,1018,1020,1021,1022,1023,1023,
- 1024,1023,1023,1022,1021,1020,1018,1016,1014,1011,
- 1008,1005,1001,997,993,989,984,979,973,968,
- 962,955,949,942,935,928,920,912,904,895,
- 886,877,868,858,848,838,828,817,806,795,
- 784,772,760,748,736,724,711,698,685,671,
- 658,644,630,616,601,587,572,557,542,527,
- 512,496,480,464,448,432,416,400,383,366,
- 350,333,316,299,282,265,247,230,212,195,
- 177,160,142,124,107,89,71,53,35,17,
- 0,-17,-35,-53,-71,-89,-107,-124,-142,-160,
- -177,-195,-212,-230,-247,-265,-282,-299,-316,-333,
- -350,-366,-383,-400,-416,-432,-448,-464,-480,-496,
- -511,-527,-542,-557,-572,-587,-601,-616,-630,-644,
- -658,-671,-685,-698,-711,-724,-736,-748,-760,-772,
- -784,-795,-806,-817,-828,-838,-848,-858,-868,-877,
- -886,-895,-904,-912,-920,-928,-935,-942,-949,-955,
- -962,-968,-973,-979,-984,-989,-993,-997,-1001,-1005,
- -1008,-1011,-1014,-1016,-1018,-1020,-1021,-1022,-1023,-1023,
- -1024,-1023,-1023,-1022,-1021,-1020,-1018,-1016,-1014,-1011,
- -1008,-1005,-1001,-997,-993,-989,-984,-979,-973,-968,
- -962,-955,-949,-942,-935,-928,-920,-912,-904,-895,
- -886,-877,-868,-858,-848,-838,-828,-817,-806,-795,
- -784,-772,-760,-748,-736,-724,-711,-698,-685,-671,
- -658,-644,-630,-616,-601,-587,-572,-557,-542,-527,
- -512,-496,-480,-464,-448,-432,-416,-400,-383,-366,
- -350,-333,-316,-299,-282,-265,-247,-230,-212,-195,
- -177,-160,-142,-124,-107,-89,-71,-53,-35,-17
- ]);
-
-
-
- /*----------------------------------------------------------------------
- fiexed sin
- a: angle(0-360)
- */
- DefConst('kFixedSin,
- func(a)
- begin
- kSinTable[a mod 360];
- end);
-
-
- /*----------------------------------------------------------------------
- fiexed cos
- a: angle(0-360)
- */
- DefConst('kFixedCos,
- func(a)
- begin
- kSinTable[(a+90) mod 360];
- end);
-